package com.log.service;

import com.aop.annotation.BussinessAno;
import com.aop.annotation.CircuitBreaker;
import org.springframework.stereotype.Service;

@Service
public class Service2 {

    // 方法1，可能会抛出异常
    @CircuitBreaker(value = "method2")
    @BussinessAno(value = "看诊: ",description = "签到", timeout = "5000")
    public String method1() {
        // 模拟一个异常
        System.out.println("执行 method1...");
        if (true) {
            throw new RuntimeException("调用method1发生错误");
        }
        return "method1执行结束";
    }

    // 熔断方法，method2
    @CircuitBreaker(value = "method3")
    public String method2() {
        System.out.println("执行熔断方法method2...");
        return "method2执行结束";
    }

    // 另一个熔断方法，method3
    public String method3() {
        System.out.println("执行熔断方法method3...");
        return "method3执行结束";
    }
}

